package Vista;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JComboBox;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JTextPane;
import java.awt.Color;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import Controlador.Sistema;
import DAO.DAOCombinaciones;
import java.util.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class frmAdministrarCombinacion extends JFrame {

	private JPanel contentPane;
	private JComboBox comboBox_1;
	private JComboBox comboBox;
	private Vector<DAOCombinaciones> combinacionesActivas;
	private Vector<DAOCombinaciones> combinacionesPosibles;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					frmAdministrarCombinacion frame = new frmAdministrarCombinacion(0);
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public frmAdministrarCombinacion( final int codigo) {
		combinacionesActivas = new Vector<DAOCombinaciones>();
		combinacionesPosibles = new Vector<DAOCombinaciones>();
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 588, 313);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		comboBox = new JComboBox();
		comboBox.setBounds(6, 188, 116, 27);
		contentPane.add(comboBox);
		
		JButton btnAgregarDescuento = new JButton("Agregar Descuento");
		btnAgregarDescuento.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				for (int i = 0;i==comboBox.getSelectedIndex();i++){
					Sistema.Getinstancia().agregarCombinacion(codigo, combinacionesPosibles.elementAt(i).getCodigo());
					cargarCombosActivo(codigo);
				}
			}
		});
		btnAgregarDescuento.setBounds(328, 187, 157, 29);
		contentPane.add(btnAgregarDescuento);
		
		JTextPane txtpnDescuentosHabilitados = new JTextPane();
		txtpnDescuentosHabilitados.setForeground(Color.LIGHT_GRAY);
		txtpnDescuentosHabilitados.setEnabled(false);
		txtpnDescuentosHabilitados.setEditable(false);
		txtpnDescuentosHabilitados.setText("Descuentos Habilitados");
		txtpnDescuentosHabilitados.setBounds(134, 188, 150, 16);
		contentPane.add(txtpnDescuentosHabilitados);
		
		comboBox_1 = new JComboBox();
		comboBox_1.setBounds(6, 33, 116, 27);
		contentPane.add(comboBox_1);
		
		JTextPane txtpnDescuentosAsociados = new JTextPane();
		txtpnDescuentosAsociados.setEnabled(false);
		txtpnDescuentosAsociados.setEditable(false);
		txtpnDescuentosAsociados.setText("Descuentos Asociados");
		txtpnDescuentosAsociados.setBounds(143, 33, 143, 16);
		contentPane.add(txtpnDescuentosAsociados);
		
		JButton btnEliminarDescuento = new JButton("Eliminar Descuento");
		btnEliminarDescuento.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
			}
		});
		btnEliminarDescuento.setEnabled(false);
		btnEliminarDescuento.setBounds(329, 32, 166, 29);
		contentPane.add(btnEliminarDescuento);
		cargarCombosActivo(codigo);
		cargarCombosPosible();
	}
	
	private void cargarCombosActivo (int codigo){
	   combinacionesActivas = Sistema.Getinstancia().obtenerCombinaciones(codigo);
		
		for (int i = 0 ; i < combinacionesActivas.size() ; i++){
			comboBox_1.addItem(combinacionesActivas.elementAt(i).getDescripcion());
		}
	}
	private void cargarCombosPosible(){
		
		combinacionesPosibles = Sistema.Getinstancia().obtenerCombinacionesPosibles();
		for (int i = 0; i< combinacionesPosibles.size(); i++){
			comboBox.addItem(combinacionesPosibles.elementAt(i).getDescripcion());
		}
		comboBox_1.setEnabled(true);
	}
}
